﻿#region 참조 네임스페이스

using Skying.IO;
using System;
using System.Windows.Forms;

#endregion

namespace MJpegViewer
{
	public partial class MainForm : Form
	{
		#region 변수

		/// <summary>
		/// MJpeg 포맷의 디코더를 나타낸다.
		/// </summary>
		private MJpegDecoder _decoder;

		#endregion

		#region 생성자/소멸자

		public MainForm()
		{
			this.InitializeComponent();

			this._decoder = new MJpegDecoder();

			this._decoder.FrameReady = (e) =>
			{
				this.MJpegPictureBox.Image = e.Result.Bitmap;
			};
		}

		#endregion

		#region 버튼 이벤트

		/// <summary>
		/// Start 버튼이 클릭됐을 때 발생하는 이벤트를 구현한다.
		/// </summary>
		/// <param name="sender"></param>
		/// <param name="e"></param>
		private void StartButton_Click(object sender, EventArgs e)
		{
			this._decoder.Start(new Uri(this.UrlTextBox.Text));
		}

		/// <summary>
		/// Stop 버튼이 클릭됐을 때 발생하는 이벤트를 구현한다.
		/// </summary>
		/// <param name="sender"></param>
		/// <param name="e"></param>
		private void StopButton_Click(object sender, EventArgs e)
		{
			this._decoder.Stop();
		}

		#endregion
	}
}
